﻿
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using NationalD3.Application.EventSourcedNormalizers;
using NationalD3.Application.ViewModels;

namespace NationalD3.Application.Interfaces
{
    /// <summary>
    /// 定义 IStudentAppService 服务接口
    /// 并继承IDisposable，显式释放资源
    /// 注意这里我们使用的对象，是视图对象模型
    /// </summary>
    public interface IStudentAppService : IDisposable
    {
        //注册
        void Register(StudentViewModel studentViewModel);

        //获取所有
        IEnumerable<StudentViewModel> GetAll();

        //根据主键获取学生
        StudentViewModel GetById(Guid id);

        //修改学生
        void Update(StudentViewModel studentViewModel);

        //删除学生
        void Remove(Guid id);
        IList<StudentHistoryData> GetAllHistory(Guid id);

    }
}
